home *** CD-ROM | disk | FTP | other *** search
/ Computer Inter@ctive 17 / Computer Interactive cdrom 17 - gen 99.iso / ZDNETIT / CONTENT / OPTIVDOS.ZIP / INCLUDE.ZIP / VQIMATH.H < prev    next >
Encoding:
C/C++ Source or Header  |  1998-10-21  |  2.3 KB  |  61 lines

  1. /*  VQImath.h
  2.  
  3.   vector management functions for data type "quad":
  4.   integer arithmetics and mathematics.
  5.  
  6.   Copyright (c) 1996-1998 by Martin Sander
  7.   All Rights Reserved.
  8. */
  9.  
  10. #ifndef __VQIMATH_H
  11. #define __VQIMATH_H
  12.  
  13. #if !defined( __VECLIB_H )
  14.    #include <VecLib.h>
  15. #endif
  16.  
  17.  
  18. #ifdef __cplusplus
  19.    extern "C" {
  20. #endif
  21.  
  22. /******************   Basic  Arithmetics   *************************/
  23.  
  24. void    __vf  VQI_neg( qiVector Y, qiVector X, ui size );
  25. void    __vf  VQI_abs( qiVector Y, qiVector X, ui size );
  26.  
  27. void    __vf  VQI_addC(  qiVector Y, qiVector X, ui size, quad C );
  28. void    __vf  VQI_subC(  qiVector Y, qiVector X, ui size, quad C );
  29. void    __vf  VQI_subrC( qiVector Y, qiVector X, ui size, quad C );
  30. void    __vf  VQI_mulC(  qiVector Y, qiVector X, ui size, quad C );
  31. void    __vf  VQI_divC(  qiVector Y, qiVector X, ui size, quad C );
  32. void    __vf  VQI_divrC( qiVector Y, qiVector X, ui size, quad C );
  33. void    __vf  VQI_modC(  qiVector Y, qiVector X, ui size, quad C );
  34. void    __vf  VQI_maxC(  qiVector Y, qiVector X, ui size, quad C );
  35. void    __vf  VQI_minC(  qiVector Y, qiVector X, ui size, quad C );
  36.  
  37. void    __vf  VQI_addV(  qiVector Z, qiVector X, qiVector Y, ui size );
  38. void    __vf  VQI_subV(  qiVector Z, qiVector X, qiVector Y, ui size );
  39. void    __vf  VQI_subrV( qiVector Z, qiVector X, qiVector Y, ui size );
  40. void    __vf  VQI_mulV(  qiVector Z, qiVector X, qiVector Y, ui size );
  41. void    __vf  VQI_divV(  qiVector Z, qiVector X, qiVector Y, ui size );
  42. void    __vf  VQI_divrV( qiVector Z, qiVector X, qiVector Y, ui size );
  43. void    __vf  VQI_modV(  qiVector Z, qiVector X, qiVector Y, ui size );
  44. void    __vf  VQI_maxV(  qiVector Z, qiVector X, qiVector Y, ui size );
  45. void    __vf  VQI_minV(  qiVector Z, qiVector X, qiVector Y, ui size );
  46.  
  47. /*****************   Bit-wise operations  *********************/
  48.  
  49. void    __vf  VQI_shl( qiVector Y, qiVector X, ui size, unsigned C );
  50. void    __vf  VQI_shr( qiVector Y, qiVector X, ui size, unsigned C );
  51.  
  52. void    __vf  VQI_and( qiVector Y, qiVector X, ui size, quad C );
  53. void    __vf  VQI_or(  qiVector Y, qiVector X, ui size, quad C );
  54. void    __vf  VQI_xor( qiVector Y, qiVector X, ui size, quad C );
  55. void    __vf  VQI_not( qiVector Y, qiVector X, ui size );
  56.  
  57. #ifdef __cplusplus
  58. }
  59. #endif
  60.  
  61. #endif   /*  __VQIMATH_H    */